#include <iostream>

using namespace std;

enum appointment_status
{
	pending,  // 预约中
	approved, // 预约成功
	rejected, // 预约不通过
	canceled  // 预约取消
};
enum room_status
{
	twenty_statues,
	fifty_statues,
	hundred_statues

};
enum appointment_time
{
	Monday_am,
	Tuesday_am,
	Wednesday_am,
	Thursday_am,
	Friday_am,

	Monday_pm,
	Tuesday_pm,
	Wednesday_pm,
	Thursday_pm,
	Friday_pm

};

class appointment{
	private:
	appointment_status status;
	vector<string> status_ = {"pending", "approved", "rejected", "canceled"};
	room_status room_type;
	vector<string> room_type_ = {"twenty_statues", "fifty_statues", "hundred_statues"};
	appointment_time time;
	vector<string> time_ = {"Monday_am", "Tuesday_am", "Wednesday_am", "Thursday_am", "Friday_am", "Monday_pm", "Tuesday_pm", "Wednesday_pm", "Thursday_pm", "Friday_pm"};
	Student student;


	public:
	appointment(room_status room_type, appointment_time time, Student student) : student(student){

		//this->student = student;
		//this->status = status;
		this->room_type = room_type;
		this->time = time;
		this->status = pending;
	}
	//user w/r file
	appointment(Student student,room_status room_type, appointment_status status,appointment_time time) : student(student){

		//this->student = student;
		this->status = status;
		this->room_type = room_type;
		this->time = time;
	}

	appointment(Student student) : student(student){
		//this->student = student;
	}

	void set_status(appointment_status status){this->status = status;}
	void set_room_type(room_status room_type){this->room_type = room_type;}
	void set_time(appointment_time time){this->time = time;}

	appointment_status get_status(){return status;}
	room_status get_room_type(){return room_type;}
	appointment_time get_time(){return time;}
	Student get_student(){return student;}


	void print_appointment(){
		cout << "Student name: " << student.getName();
		cout << " Student ID: " << student.getid();
		cout << " Appointment status: " << status_[status];
		cout << " Room type: " << room_type_[room_type];
		cout << " Appointment time: " << time_[time] << endl;
	}
	
};